
                           
                         -------------------------

            ?

     -,            .    
  ,       .

         ,      , 
  , ,   .

     ,           
   (..     ),     
           ,      
     --       
     .
              ,      
        .      
 ,   ,    .

     -,                
     .

     ,            , 
       .
                 ,  
              .  :  
        ,   
       .

           UEP (EPO).

     

 C  -    .

 Ci -       ,
              .

 I  -     ,    
          .

     
                                 C = Ci * I

            :   
   I,          ,    
   (Ci).

             :

     for(i = 0; i < I; i++)
     {
       init_emul();       \
       emul(block[i]);      Ci
       check_virus();     /
     }

         ,     , 
        ,    
    ,        
   .

       ,      N
 ,      N    ,     
      .
       ,       ,
           ,   
 ,     

                                     I!
                          C = Ci * ------
                                   (I-N)!

             I!
      ------       I  N.
           (I-N)!

     ,  ,        4, 
     2   ,   
 12 :

       {0,1}  {0,2}  {0,3}
       {1,0}  {1,2}  {1,3}
       {2,0}  {2,1}  {2,3}
       {3,0}  {3,1}  {3,2}

      ,       :

     for(i1 = 0; i1 < I; i1++)   \
     for(i2 = 0; i2 < I; i2++)    \
     if (i2 != i1)                 \
     for(i3 = 0; i3 < I; i3++)      \
     if (i3 != i1)                   \    I!
     if (i3 != i2)                      ------
     ...                                (I-N)!
     for(iN = 0; iN < I; iN++)       /
     if (iN != i1)                  /
     if (iN != i2)                 /
     if (iN != i3)                /
     ...                         /
     {
       init_emul();              \
       emul(block[i1]);           \
       ...                          Ci
       emul(block[iN]);           /
       check_virus();            /
     }

              ,      
     ,   ,    
       .

              .       
    debug api.
              ,
 ,    .  ,      
 .
            ,
     .
           ,      , 
 ,      EXE-       DLL-.   
              
 ,         , ,  
    .

     ,              
 ,        .      
     ,          --
 EXE'        DLL',       
   ,   ,  
  .

       :

 1.  .
 2.   .
    (  , .  Mistfall   ZMist)
 3.    (, . Tracer32),
       .
     ,       
      (brrakpoint, INT3),  ,   
      callback',     .
 4.    ,   ,
       .
 5.          3.
 6.   .
 7.     ,
         .
 8.    .
 9.    .

       ,        , 
           ,  
        .

                
 .         ( 
 ),       .   N  
 ,      ,    
             ,        
 ,      .      ,    
     ,     ,
         .  
     ,     
           ,   
 .

         ,            
       (   )   
    .

                                   * * *
